perm filename ARM.NSF[DOC,TOB] blob sn#043021 filedate 1973-05-10 generic text, type T, neo UTF8
	C. MANIPULATOR DEVELOPMENT

Manipulator research began at the  Stanford  Artificial  Intelligence
Laboratory  in  1965  with  the acquisition of a Rancho Orthotic Arm.
This arm was interfaced in such a way that the  computer  could  read
the  joint  positions by means of potentiometers and drive the arm by
means of a voltage, pulse rate modulated signal for each  joint.  Two
solution   programs   were  written:  one  to  give  the  rectangular
coordinate position of the hand knowing the six joint angles, and one
to  give  the  joint  angles  knowing  the desired x,y,z position and
orientation of the hand. These programs were  then  combined  with  a
servo program to move the hand.

The  servo  program  represents  two  key  concepts of all subsequent
manipulator research at this laboratory:
1)  To  provide a digital computer with all sensory inputs, initially
joint positions, but later velocity, force and touch measurements.
2)  The  utilization  of  a  programable digital computer to take the
sensory  inputs  and  to  provide  basic  control   output   to   the
manipulator, in our case joint torque.
Initially the sensory input of joint angles was to provide a position
servo  with  a sampling rate of 60 cycles per second. The arm control
has been changed many times since, a simple task in  the  case  of  a
program,  but difficult in the case of a hard wire servo system. This
system was used by Wichman, Pingle and Singer in 1968  to  provide  a
program  which  could  pick-up  sort and stack blocks, and in a first
attempt at visual feedback.

At  this  time  Piper  considered  the kinematics of manipulators and
developed a classification scheme for all  possible  arms  and  their
analytic  solvability.  He  concluded  his  work  by  implementing  a
trajectory based collision avoiding program. Although slow, this work
demonstrated the need for trajectory control of the arm.

Kahn  followed Piper with a study of the dynamics of manipulators and
developed a "bang-bang" servo for a  new  hydraulic  arm.  This  arm,
still  at  the  laboratory,  was  developed  as  a  high  performance
manipulator.

By  1970  a  general purpose block program was implemented capable of
manipulating plane faced bodies. This program was used in the initial
version   of  the  "Instant  Insanity"  program  where  all  possible
reorientations of the four colored cubes were required in the  puzzle
solution.

Our  present arm, the result of a continuing design project, replaced
the Rancho Arm in 1970. This arm, like its predecessor is  controlled
by a digital servo program running under the time sharing system. The
new arm was used in the "Instant Insanity" demonstration in 1971.

As this arm is driven by electric motors through high efficiency gear
reductions it is possible to predict the torque exerted at each joint
in terms of drive level. Based on kinematic analysis it  is  possible
to  calculate the joint torques necessary to produce a given force at
the hand. Further, for the hand to  exhibit  degrees  of  freedom  of
motion, various joints are selected to be "free," that is, to have no
position feedback applied to them. By exerting a force  at  the  hand
and providing that certain degrees of freedom exist it is possible to
perform a much wider class of tasks than simple  positional  control,
for  instance  screwing  in screws, mating parts, inserting tools and
turning cranks.

Touch  sensors on the fingers allow the hand to sense objects without
disturbing them. When activated the arm will stop  when  any  of  the
sensors  touch.  Branching arm instructions can test the state of the
sensors and modify the execution of an arm program. When  screwing  a
nut  onto  a  bolt, for instance, the hand is first centered over the
bolt by touching it.

A  second  arm  of  the  same type, with only minor modifications, is
currently being interfaced to the computer. Both arms  will  share  a
common  work  space  and  will  be  able  to be used individually, or
together for two-handed tasks. This should increase the scope of  our
manipulation work by some orders of magnitude. It may be possible for
many assembly workers to work with their eyes closed but it would not
be  possible,  in  most  cases,  to work with only one arm, as we are
currently doing.

Control   of  the  arms  is  achieved  by  a  series  of  high  level
instructions; these instructions may be executed directly, or may  be
assembled  together  into  an  arm  program. Arm programs may then be
executed,  as  desired,  by  the   control   program.   The   control
instructions  may  be  accessed directly by other programs, using the
message procedure mechanism, or in the  form  of  a  symbolic  source
file.

Positional  accuracy  at  the  hand  is  typically  0.1  inches  with
repeatability  of 0.02 inches. Force control at the hand is within 10
ounces. The data rate to run the arm from an assembled arm program is
of the order of 100 bits/second.

Manipulator research moves  ahead  simultaneously  on  three  fronts:
control,  primitives  and  devices.  Tasks  are  translated  into  an
existing hand language and where the task cannot be  accomplished  in
terms  of  existing  primitives,  new  primitives are formulated in a
consistent manner. When a new  primitive  is  formulated,  real  time
routines  are  developed  to  perform the action. This also leads, in
many  cases,  to  the  development  of  new  hardware.  Also  as  new
developments  occur  in  hardware design, existing real time routines
are either re-written or modified.

Research  is  now  concentrating  on  the following areas: To provide
strain gauge instrumentation of the wrist, in order to allow for more
sensitive  interaction  of  the  hand with a task. The development of
high resolution, high sensitivity touch sensors, to increase  tactile
recognition  and  control  abilities. These developments will lead in
turn to new control concepts.

Development  of  tools  for the hand. These tools can be instrumented
such that the computer can feel and or see at the end  of  the  tool.
This  should  be  a very important area of research as it goes beyond
present human capabilities.

Two handed arm control, the planning and execution of tasks requiring
the coordinated motion of both arms, will require an extension of the
existing  servo program and the analysis of synchronization problems.
The development of collision avoiders, so that arms will not  collide
with other objects and with each other.

Modification of  the  existing  arm  design  to  provide  for  better
incremental motions, more degrees of freedom and a more rugged design
suitable for industrial use. Development  of  arm  and  eye  computer
interfaces.  These contain synchronized analog/digital converters for
input and current controlled drivers for output.

The  development  of  new hands is expected as more complex tasks are
attempted. At present, with only one hand, we  have  been  performing
the  positioning  type  of  hand  actions.  When  the  second  arm is
operational we will be able to perform holding and pulling actions as
well.